package com.yssoft.controller.app.production;

import com.yssoft.entity.production.TLabelApply;
import com.yssoft.service.production.LabelApplyService;
import com.yssoft.utils.AppUtil;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;

import java.util.List;
import java.util.Map;

/**
 * @类名称: LabelApplyController
 * @类描述: 标签申请管理控制器
 * @作者: 王永宁
 * @创建时间:2018年5月9日 下午5:36:50
 */
@CrossOrigin//解决跨域session问题
@Controller
@RequestMapping("/app/laberApply")
public class LabelApplyController {
    
    @Resource
    private LabelApplyService labelApplyService;
    
    /**
     * @方法名称: getLabelApplyList
     * @功能描述: 获取标签申请列表
     * @作者: 王永宁
     * @创建时间:2018年5月9日 下午5:33:38
     * @param page 当前页数
     * @param limit 每页条数
     * @param companyId 企业id
     * @param createTime 申请时间
     * @param productName 产品名称
     * @param stat 申请状态
     * @return Object
     */
    @RequestMapping(value = "getLabelApplyList",method = RequestMethod.POST)
    @ResponseBody
    public Object getLabelApplyList(int page, int limit, Integer companyId, String createTime, String productName,String stat) {
    	 if (null == companyId) {
             return AppUtil.returnMapJson("0", "查询失败，请传递企业id", null);
         } 
         try {
             List<Map<String, Object>> labelApplyList = labelApplyService.findPage(page, limit, companyId, createTime, productName, stat);
             if(labelApplyList!=null && labelApplyList.size()>0) {
         		for(Map<String, Object> map:labelApplyList) {
         			//过滤批量溯源
         			if(map!=null && "2".equals(map.get("suyuan")) && map.get("used_quantity")!=null ) {
         				Integer used_quantity=Integer.valueOf(map.get("used_quantity")+"");
         				if(used_quantity>0) {
         					map.put("used_quantity", 1);
         				}
         			}
         		}
         	}
             return AppUtil.returnListJson("1", "查询成功!", labelApplyList);
         } catch (NumberFormatException e) {
             return AppUtil.returnMapJson("0", "查询失败!"+e.getMessage(), null);
         }
    }
    
    /**
     * @方法名称: saveLabelApply
     * @功能描述: 保存标签申请
     * @作者: 王永宁
     * @创建时间:2018年5月10日 上午10:27:22
     * @param request
     * @param entity
     * @return Object
     */
    @RequestMapping(value = "saveLabelApply",method = RequestMethod.POST)
    @ResponseBody
    public Object saveLabelApply(HttpServletRequest request,TLabelApply entity) {
        try {
        	labelApplyService.save(request, entity);
        	return AppUtil.returnMapJson("1", "保存成功!", null);
        } catch (NumberFormatException e) {
            return AppUtil.returnMapJson("0", "保存失败!"+e.getMessage(), null);
        }
    }
}
